Lead Intelligence Enricher — Owner Names + Review Sentiment
Under maintenancePricing
from $10.00 / 1,000 business enricheds
Lead Intelligence Enricher — Owner Names + Review Sentiment
Under maintenanceAdds owner names + customer-sentiment summaries to every Google Maps business — hallucination-guarded, eval-audited.
Pricing
from $10.00 / 1,000 business enricheds
Rating
0.0
(0)
Developer
Vijaya Jayaraj
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
20 days ago
Last modified
Categories
Share
Lead Intelligence Enricher
Turn a Google Maps scrape into a real lead list. Adds verified owner names and customer-sentiment summaries to every business in your
compass/crawler-google-placesdataset.
$10 per 1,000 enriched businesses · pay only for results · hallucination-guarded · eval-audited (68.8% precision on 154 labeled businesses)
📍 What is Lead Intelligence Enricher?
You scraped 1,000 dentists in Berlin. Now you need to know who runs each one and what their customers actually say. This actor reads your compass output and answers both questions per business — with the source URL and verbatim quote attached, so every answer is auditable.
It's the missing layer between raw Google Maps scraping and an SDR-ready lead list.
Built for:
- 🎯 B2B sales teams running cold outreach — go from
info@business.comtoDr. Errin DePalma, Principal Dentist - 📊 Agencies delivering enriched lead lists to clients — every result auditable, every null explainable
- 🏢 Founders doing partner outreach — find the actual decision-maker, not the front desk
- 🔍 Researchers mapping local industries — owner + sentiment together = a competitive snapshot in two fields
⚡️ Why this actor (and not the dozen others)
- 🛡 Hallucination-guarded. Every owner name is source-quote-verified against the business's website, boilerplate-rejected (no "Customer Service" as an owner name), and cross-business dedup-checked (no chain-corporate template names slipping through). If the model can't quote where it found the name, the result is
null. - 🎯 Honest about nulls. ~30–40% of businesses don't have a findable owner — chain corporates, anonymous-by-design verticals, sites with no team page. The actor returns
nullfor those and doesn't charge for them. Anullis a feature, not a failure. - 📐 Eval-audited. Quality numbers are measured against a 154-business human-labeled set. The labeling guide, comparator code, and per-record diffs are all in the GitHub repo. Every percentage point on this page is independently verifiable.
- 💸 No LLM markup. Our model infrastructure bill is paid directly to the provider, not routed through Apify's platform-cost layer. The price you see is the price.
📦 What does the actor add per business?
| Field | Type | Example |
|---|---|---|
owner_name | string | null | "Dr. Errin DePalma" |
owner_title | string | null | "Principal Dentist" |
owner_confidence | number (0–1) | 0.91 |
owner_source_url | string | null | "https://depalmadental.com/about" |
sentiment_digest | string | null | 2-sentence summary of review themes |
sentiment_praise_themes | string[] | null | ["gentle dentists", "modern equipment"] |
sentiment_complaint_themes | string[] | null | ["long wait times", "billing confusion"] |
enriched_at | ISO 8601 | "2026-05-28T14:23:11.000Z" |
enrichment_model | string | Model version identifier |
Every original compass field passes through unchanged.
🔁 How it fits in your workflow
compass/crawler-google-places → Lead Intelligence Enricher → enriched dataset↓ ↓ ↓Maps places owner + sentiment CRM / outreach / scoring
- Run compass/crawler-google-places with your query and filters. Important: set
maxReviews ≥ 10if you want the sentiment digest. (Default is 0, which means no review text.) - Copy the resulting dataset ID from the run's Storage tab.
- Run this actor with that dataset ID as input.
- Download the enriched dataset — owner_name and sentiment_digest fields are added per record.
🚀 Try it in 30 seconds
- Click Try for free on this page
- Paste a compass dataset ID into the
inputDatasetIdfield - Click Start
- Open the Storage tab → switch to the Owners found view to see only businesses with extracted names
That's it. No API keys to set up, no models to host, no proxy to configure.
📥 Input fields
| Field | Type | Default | Notes |
|---|---|---|---|
inputDatasetId | string | required | Compass dataset ID — find it in compass's run → Storage tab |
enrichOwnerName | bool | true | Visit each business's website and extract the owner |
enrichReviewSentiment | bool | true | Summarize reviews (requires maxReviews ≥ 5 upstream) |
confidenceThreshold | enum | "balanced" | "strict" (higher precision, more nulls) or "balanced" (default) |
proxyConfig | object | residential | Used when fetching business websites |
A permissive confidence mode is intentionally not offered — the hallucination risk is not worth the recall gain.
📂 Sample output (one record)
{"place_id": "ChIJX12k...","name": "DePalma Dental","website": "https://depalmadental.com","rating": 4.8,"reviews": [/* compass passthrough */],"owner_name": "Dr. Errin DePalma","owner_title": "Principal Dentist","owner_confidence": 0.91,"owner_source_url": "https://depalmadental.com/about","sentiment_digest": "Patients consistently praise the gentle bedside manner and modern equipment. A handful complain about long wait times during peak hours.","sentiment_praise_themes": ["gentle dentists", "modern equipment", "clean facility"],"sentiment_complaint_themes": ["long wait times", "billing confusion"],"enriched_at": "2026-05-28T14:23:11.000Z","enrichment_model": "lead-intelligence-enricher-v1"}
When the actor can't confidently extract a name: owner_name, owner_title, and owner_source_url come back null and owner_confidence is 0. Never hallucinated.
✅ Quality numbers (the trust moat)
Measured on a 154-business human-labeled eval set, balanced threshold.
| Metric | Value | What it means in plain English |
|---|---|---|
| 🎯 Precision | 68.8% | Of the names we return, ~7 in 10 match the human label. Lower bound — see audit caveat. |
| 📡 Recall | 45.8% | When a human can find an owner on the website, we return the same person ~46% of the time. The other ~54% are intentional nulls — low confidence, source-quote rejected, or boilerplate guard fired. |
| ❌ False-positive rate | 9.7% | About 1 in 10 records gets a name the labeler classifies as wrong. A partial hand-audit showed roughly 1/3 of FPs are labeler edge-cases (joint owners, thin labels) — the genuine model-error rate is approximately 3.5%. |
Audit caveat. The remaining false-positives have not yet been individually hand-checked against source websites. Treat 68.8% as a lower bound; the hand-audited number is expected to be higher.
Stratified across US / EU / LATAM / India / Rest, and across categories: restaurants, dentists, plumbers, retail, professional services. Mix includes ~30% no-website businesses, multiple CMS platforms, and English + non-English sites.
💰 Pricing
Pay-per-event, no subscription, no monthly minimum.
| Event | Price | When it fires |
|---|---|---|
| 🚀 Run start | $0.005 | Once per run |
| 👤 Business enriched | $0.010 | Per business where at least one enrichment field came back non-null |
You don't pay for businesses we can't enrich. If both owner_name and sentiment_digest are null (e.g., the business has no website and no reviews), no charge fires for that record.
💡 Worked example
You run the actor on 1,000 dentists. After processing:
- 650 have findable owners
- 920 have ≥5 reviews and get a sentiment digest
- 80 have neither → not charged
You pay: $0.005 + (920 × $0.010) = $9.205
A business with sentiment only (and no owner) still counts as enriched.
❓ FAQ
⚠️ Limitations
Up-front, in plain language:
- No website ⇒ no owner. We don't have access to non-web sources (LinkedIn, business registries). If compass returns a business without a
websitefield,owner_namewill always be null. - Anonymous-by-design verticals (legal, medical, adult services) return null often. That's the design.
- Chain corporates (Starbucks, Domino's) return null. There is no individual owner attributable.
- Sentiment requires reviews. If your compass run set
maxReviews: 0(the default), every record'ssentiment_digestwill be null. SetmaxReviews ≥ 10upstream. - Not a Google Maps scraper. This is a post-scrape enrichment layer. We don't refetch maps data.
🔎 Auditable by design
Every owner name we return carries the source URL and the verbatim source quote it was extracted from. If a name ever looks wrong, you can verify it in 5 seconds by clicking through to the source page. The hallucination guard exists precisely so that any FP you find is a labeler edge-case, not a fabrication.
Custom enterprise eval against your own labeled dataset? Drop a note via Support — happy to run your set through the actor and share the numbers.
🆘 Support
Found a wrong owner name? A failing record? An idea for a feature? Drop a note on this actor's Apify Store page with:
- The
place_id(or business name + city if noplace_id) - Observed vs expected output
- The compass dataset ID if applicable
I take hallucination reports seriously — every false positive gets added to the eval set for the next prompt iteration.